package com.biodiv.transport.support;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * @author tianquan
 */
@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
public @interface TransportClient {

    // 服务名称（用于服务发现）
    String value() default "";

    // 直接指定服务的 URL（绕过服务发现）
    String url() default "";

    // 熔断降级类（必须实现当前 Feign 接口）
    Class<?> fallback() default void.class;

    // 熔断降级工厂类（生成 fallback 实例）
    Class<?> fallbackFactory() default void.class;

}
